class Node{//一个一个的节点
    constructor(val){
        this.val = val 
        this.next = null
    }
}


class LinkNodeList{//整个链表
    constructor(){
        this.head = null
        this.length = 0
    }
    //添加节点的方法
    append( val ){
        let node = new Node(val)
        let p = this.head //用来标记当前节点
        if(this.head){//头结点不为空,先找到链表的最后一项，才能加上
            while( p.next){//如果next还有
                p =  p.next
            }
            p.next = node
        }else{//头结点为空
            this.head = node
        }
        this.length++
    }
    print(){
        let p = this.head//标记当前节点
        let res = ''
        if(!this.head) return {} //如果链表的头节点为空，直接返回
        do{
            res += p.val + '=>'
            p = p.next
        }while(p.next)
        res += p.val
        console.log(res);

    }

}

let link1 = new LinkNodeList()
link1.append(1)
link1.append(2)
link1.append(3)
link1.append(4)
link1.print()




